[INFO] cloning repository https://github.com/ijanc/tapir
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ijanc/tapir" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fijanc%2Ftapir", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fijanc%2Ftapir'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ca73219f53c05a1d01f79f2ad64091e6bfa842da
[INFO] testing ijanc/tapir against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fijanc%2Ftapir" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-5-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/ijanc/tapir
[INFO] finished tweaking git repo https://github.com/ijanc/tapir
[INFO] tweaked toml for git repo https://github.com/ijanc/tapir written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ijanc/tapir on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ijanc/tapir already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3e26ae6e584eae9708258fe4ac0f1693517cb457efb90d7fa0501d4712d257b2
[INFO] running `Command { std: "docker" "start" "-a" "3e26ae6e584eae9708258fe4ac0f1693517cb457efb90d7fa0501d4712d257b2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3e26ae6e584eae9708258fe4ac0f1693517cb457efb90d7fa0501d4712d257b2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3e26ae6e584eae9708258fe4ac0f1693517cb457efb90d7fa0501d4712d257b2", kill_on_drop: false }`
[INFO] [stdout] 3e26ae6e584eae9708258fe4ac0f1693517cb457efb90d7fa0501d4712d257b2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b8af6ea49abedd7daffb749f32440c2b981798bbc85bce5d866b7ca7d9374882
[INFO] running `Command { std: "docker" "start" "-a" "b8af6ea49abedd7daffb749f32440c2b981798bbc85bce5d866b7ca7d9374882", kill_on_drop: false }`
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling webpki-roots v0.25.4
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling sct v0.7.1
[INFO] [stderr]    Compiling rustls-webpki v0.101.7
[INFO] [stderr]    Compiling minreq v2.14.1
[INFO] [stderr]    Compiling tapir v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: direct cast of function item into an integer
[INFO] [stdout]   --> src/signal.rs:12:35
[INFO] [stdout]    |
[INFO] [stdout] 12 |         sa.sa_sigaction = handler as usize;
[INFO] [stdout]    |                                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(function_casts_as_integer)]` on by default
[INFO] [stdout] help: first cast to a pointer `as *const ()`
[INFO] [stdout]    |
[INFO] [stdout] 12 |         sa.sa_sigaction = handler as *const () as usize;
[INFO] [stdout]    |                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized] target(s) in 17.72s
[INFO] running `Command { std: "docker" "inspect" "b8af6ea49abedd7daffb749f32440c2b981798bbc85bce5d866b7ca7d9374882", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b8af6ea49abedd7daffb749f32440c2b981798bbc85bce5d866b7ca7d9374882", kill_on_drop: false }`
[INFO] [stdout] b8af6ea49abedd7daffb749f32440c2b981798bbc85bce5d866b7ca7d9374882
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bd6ce6292eeb40b22c49c1c49eae453fcbbff949d6b351fee39d61e5a44af5d8
[INFO] running `Command { std: "docker" "start" "-a" "bd6ce6292eeb40b22c49c1c49eae453fcbbff949d6b351fee39d61e5a44af5d8", kill_on_drop: false }`
[INFO] [stderr]    Compiling tapir v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: direct cast of function item into an integer
[INFO] [stdout]   --> src/signal.rs:12:35
[INFO] [stdout]    |
[INFO] [stdout] 12 |         sa.sa_sigaction = handler as usize;
[INFO] [stdout]    |                                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(function_casts_as_integer)]` on by default
[INFO] [stdout] help: first cast to a pointer `as *const ()`
[INFO] [stdout]    |
[INFO] [stdout] 12 |         sa.sa_sigaction = handler as *const () as usize;
[INFO] [stdout]    |                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized] target(s) in 1.62s
[INFO] running `Command { std: "docker" "inspect" "bd6ce6292eeb40b22c49c1c49eae453fcbbff949d6b351fee39d61e5a44af5d8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bd6ce6292eeb40b22c49c1c49eae453fcbbff949d6b351fee39d61e5a44af5d8", kill_on_drop: false }`
[INFO] [stdout] bd6ce6292eeb40b22c49c1c49eae453fcbbff949d6b351fee39d61e5a44af5d8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 0f766aee42c433fb6ee7f4a718c33dfc13fd3198be8fe47d7eaea33c67e0a418
[INFO] running `Command { std: "docker" "start" "-a" "0f766aee42c433fb6ee7f4a718c33dfc13fd3198be8fe47d7eaea33c67e0a418", kill_on_drop: false }`
[INFO] [stderr] warning: direct cast of function item into an integer
[INFO] [stderr]   --> src/signal.rs:12:35
[INFO] [stderr]    |
[INFO] [stderr] 12 |         sa.sa_sigaction = handler as usize;
[INFO] [stderr]    |                                   ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(function_casts_as_integer)]` on by default
[INFO] [stderr] help: first cast to a pointer `as *const ()`
[INFO] [stderr]    |
[INFO] [stderr] 12 |         sa.sa_sigaction = handler as *const () as usize;
[INFO] [stderr]    |                                   ++++++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `tapir` (bin "tapir" test) generated 1 warning (run `cargo fix --bin "tapir" -p tapir --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized] target(s) in 0.09s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/tapir-d54befd61c4010ff)
[INFO] [stdout] 
[INFO] [stdout] running 84 tests
[INFO] [stdout] test api::tests::test_is_retryable_transient_api_errors ... ok
[INFO] [stdout] test api::tests::test_not_retryable_other_errors ... ok
[INFO] [stdout] test api::tests::test_not_retryable_client_errors ... ok
[INFO] [stdout] test api::tests::test_retry_delay_respects_retry_after ... ok
[INFO] [stdout] test api::tests::test_retry_delay_exponential ... ok
[INFO] [stdout] test context::tests::find_context_files_falls_back_to_claude ... ok
[INFO] [stdout] test api::tests::test_is_retryable_http_error ... ok
[INFO] [stdout] test context::tests::find_context_files_prefers_agents_over_claude ... ok
[INFO] [stdout] test error::tests::test_api_error_display ... ok
[INFO] [stdout] test skill::tests::format_skills_empty ... ok
[INFO] [stdout] test context::tests::find_context_files_from_nested_dirs ... ok
[INFO] [stdout] test context::tests::load_base_prompt_global_system_replaces_default ... ok
[INFO] [stdout] test context::tests::read_optional_file_returns_none_for_missing ... ok
[INFO] [stdout] test error::tests::test_api_error_without_retry_after ... ok
[INFO] [stdout] test skill::tests::format_skills_produces_xml ... ok
[INFO] [stdout] test skill::tests::parse_basic_frontmatter ... ok
[INFO] [stdout] test skill::tests::load_from_dir_nonexistent ... ok
[INFO] [stdout] test skill::tests::parse_frontmatter_empty ... ok
[INFO] [stdout] test skill::tests::parse_frontmatter_missing_fences ... ok
[INFO] [stdout] test skill::tests::parse_frontmatter_with_optional_fields ... ok
[INFO] [stdout] test skill::tests::skill_body_no_frontmatter ... ok
[INFO] [stdout] test skill::tests::skill_body_strips_frontmatter ... ok
[INFO] [stdout] test skill::tests::validate_name_consecutive_hyphens ... ok
[INFO] [stdout] test skill::tests::validate_name_empty ... ok
[INFO] [stdout] test skill::tests::validate_name_invalid_chars ... ok
[INFO] [stdout] test skill::tests::validate_name_leading_hyphen ... ok
[INFO] [stdout] test context::tests::load_base_prompt_uses_default_when_no_files ... ok
[INFO] [stdout] test skill::tests::load_from_dir_subdirectory_skill ... ok
[INFO] [stdout] test context::tests::load_base_prompt_appends_append_files ... ok
[INFO] [stdout] test context::tests::load_base_prompt_project_system_replaces_default ... ok
[INFO] [stdout] test skill::tests::load_from_dir_empty ... ok
[INFO] [stdout] test skill::tests::validate_name_too_long ... ok
[INFO] [stdout] test skill::tests::validate_name_trailing_hyphen ... ok
[INFO] [stdout] test skill::tests::validate_name_uppercase ... ok
[INFO] [stdout] test skill::tests::validate_name_valid ... ok
[INFO] [stdout] test timer::tests::format_hours ... ok
[INFO] [stdout] test timer::tests::format_minutes_and_seconds ... ok
[INFO] [stdout] test timer::tests::format_seconds_only ... ok
[INFO] [stdout] test skill::tests::load_from_dir_skips_missing_description ... ok
[INFO] [stdout] test context::tests::read_optional_file_returns_content ... ok
[INFO] [stdout] test context::tests::read_optional_file_returns_none_for_empty ... ok
[INFO] [stdout] test skill::tests::load_from_dir_direct_md ... ok
[INFO] [stdout] test skill::tests::load_from_dir_warns_name_mismatch ... ok
[INFO] [stdout] test skill::tests::discover_deduplicates_by_name ... ok
[INFO] [stdout] test context::tests::load_system_prompt_assembles_all_parts ... ok
[INFO] [stdout] test context::tests::load_base_prompt_project_overrides_global ... ok
[INFO] [stdout] test tool::tests::test_bash_default_timeout ... ok
[INFO] [stdout] test tool::tests::test_bash_no_timeout ... ok
[INFO] [stdout] test skill::tests::discover_merges_multiple_dirs ... ok
[INFO] [stdout] test tool::tests::test_fuzzy_replace_no_match ... ok
[INFO] [stdout] test tool::tests::test_format_rg_json ... ok
[INFO] [stdout] test tool::tests::test_fuzzy_replace_multiple_matches ... ok
[INFO] [stdout] test tool::tests::test_fuzzy_replace_whitespace ... ok
[INFO] [stdout] test tool::tests::test_safe_path_for_write_new_file ... ok
[INFO] [stdout] test tool::tests::test_read_file_numbered ... ok
[INFO] [stdout] test tool::tests::test_ls_basic ... ok
[INFO] [stdout] test tool::tests::test_edit_file_fuzzy_match ... ok
[INFO] [stdout] test tool::tests::test_read_file_with_offset_limit ... ok
[INFO] [stdout] test util::tests::test_floor_char_boundary_ascii ... ok
[INFO] [stdout] test util::tests::test_ceil_char_boundary_ascii ... ok
[INFO] [stdout] test util::tests::test_floor_char_boundary_beyond ... ok
[INFO] [stdout] test util::tests::test_ceil_char_boundary_beyond ... ok
[INFO] [stdout] test util::tests::test_edit_diff_basic ... ok
[INFO] [stdout] test util::tests::test_floor_char_boundary_multibyte ... ok
[INFO] [stdout] test util::tests::test_normalize_for_match_dashes ... ok
[INFO] [stdout] test util::tests::test_ceil_char_boundary_multibyte ... ok
[INFO] [stdout] test util::tests::test_normalize_for_match_smart_quotes ... ok
[INFO] [stdout] test util::tests::test_normalize_for_match_whitespace ... ok
[INFO] [stdout] test util::tests::test_truncate_head_by_bytes ... ok
[INFO] [stdout] test util::tests::test_truncate_head_by_lines ... ok
[INFO] [stdout] test util::tests::test_truncate_head_no_truncation ... ok
[INFO] [stdout] test tool::tests::test_safe_path_rejects_traversal ... ok
[INFO] [stdout] test tool::tests::test_safe_path_for_write_rejects_traversal ... ok
[INFO] [stdout] test util::tests::test_truncate_line_short ... ok
[INFO] [stdout] test util::tests::test_truncate_line_long ... ok
[INFO] [stdout] test tool::tests::test_safe_path_within_dir ... ok
[INFO] [stdout] test util::tests::test_truncate_short ... ok
[INFO] [stdout] test util::tests::test_truncate_tail_no_truncation ... ok
[INFO] [stdout] test util::tests::test_truncate_long ... ok
[INFO] [stdout] test tool::tests::test_edit_file_with_diff ... ok
[INFO] [stdout] test util::tests::test_truncate_tail_by_lines ... ok
[INFO] [stdout] test tool::tests::test_bash_interrupted ... ok
[INFO] [stdout] test timer::tests::timer_start_stop_returns_duration ... ok
[INFO] [stdout] test tool::tests::test_bash_timeout ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 84 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.23s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "0f766aee42c433fb6ee7f4a718c33dfc13fd3198be8fe47d7eaea33c67e0a418", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0f766aee42c433fb6ee7f4a718c33dfc13fd3198be8fe47d7eaea33c67e0a418", kill_on_drop: false }`
[INFO] [stdout] 0f766aee42c433fb6ee7f4a718c33dfc13fd3198be8fe47d7eaea33c67e0a418
